﻿using System;
namespace Producers.Rr.Xtee.Riik.Ee.Producer.Rr {
    
    
    public partial class RR572ResponseV1 : global::Producers.Rr.Xtee.Riik.Ee.Producer.Rr.IRR572ResponseV1 {
        
        private System.Collections.Generic.List<RR572ResponseV1.IIsikType> @__isik = new System.Collections.Generic.List<RR572ResponseV1.IIsikType>();
        
        public RR572ResponseV1() {
        }
        
        /// <summary>
        /// All parameters
        /// </summary>
        public RR572ResponseV1(System.Collections.Generic.List<RR572ResponseV1.IIsikType> @isik) {
            this.@__isik = @isik;
        }
        
        /// <summary>
        /// Copy Constructor
        /// </summary>
        protected RR572ResponseV1(IRR572ResponseV1 @rR572ResponseV1) {
            this.@__isik = @rR572ResponseV1.Isik;
        }
        
        public virtual System.Collections.Generic.List<RR572ResponseV1.IIsikType> Isik {
            get {
                return this.@__isik;
            }
            set {
                this.@__isik = value;
            }
        }
        
        public partial class IsikType : IIsikType {
            
            private string @__isikIsikukood;
            
            private string @__isikPerenimi;
            
            private string @__isikEesnimi;
            
            private string @__isikOlek;
            
            private string @__isikSurmakuup;
            
            private string @__isikRiik;
            
            private string @__isikElukoht;
            
            private string @__isikVaikekoht;
            
            private string @__isiktanav;
            
            private string @__isikNimi;
            
            private string @__isikmaja;
            
            private string @__isikkorter;
            
            public IsikType() {
            }
            
            /// <summary>
            /// All parameters
            /// </summary>
            public IsikType(string @isikIsikukood, string @isikPerenimi, string @isikEesnimi, string @isikOlek, string @isikSurmakuup, string @isikRiik, string @isikElukoht, string @isikVaikekoht, string @isiktanav, string @isikNimi, string @isikmaja, string @isikkorter) {
                this.@__isikIsikukood = @isikIsikukood;
                this.@__isikPerenimi = @isikPerenimi;
                this.@__isikEesnimi = @isikEesnimi;
                this.@__isikOlek = @isikOlek;
                this.@__isikSurmakuup = @isikSurmakuup;
                this.@__isikRiik = @isikRiik;
                this.@__isikElukoht = @isikElukoht;
                this.@__isikVaikekoht = @isikVaikekoht;
                this.@__isiktanav = @isiktanav;
                this.@__isikNimi = @isikNimi;
                this.@__isikmaja = @isikmaja;
                this.@__isikkorter = @isikkorter;
            }
            
            /// <summary>
            /// Copy Constructor
            /// </summary>
            protected IsikType(IIsikType @isikType) {
                this.@__isikIsikukood = @isikType.IsikIsikukood;
                this.@__isikPerenimi = @isikType.IsikPerenimi;
                this.@__isikEesnimi = @isikType.IsikEesnimi;
                this.@__isikOlek = @isikType.IsikOlek;
                this.@__isikSurmakuup = @isikType.IsikSurmakuup;
                this.@__isikRiik = @isikType.IsikRiik;
                this.@__isikElukoht = @isikType.IsikElukoht;
                this.@__isikVaikekoht = @isikType.IsikVaikekoht;
                this.@__isiktanav = @isikType.Isiktanav;
                this.@__isikNimi = @isikType.IsikNimi;
                this.@__isikmaja = @isikType.Isikmaja;
                this.@__isikkorter = @isikType.Isikkorter;
            }
            
            public virtual string IsikIsikukood {
                get {
                    return this.@__isikIsikukood;
                }
                set {
                    this.@__isikIsikukood = value;
                }
            }
            
            public virtual string IsikPerenimi {
                get {
                    return this.@__isikPerenimi;
                }
                set {
                    this.@__isikPerenimi = value;
                }
            }
            
            public virtual string IsikEesnimi {
                get {
                    return this.@__isikEesnimi;
                }
                set {
                    this.@__isikEesnimi = value;
                }
            }
            
            public virtual string IsikOlek {
                get {
                    return this.@__isikOlek;
                }
                set {
                    this.@__isikOlek = value;
                }
            }
            
            public virtual string IsikSurmakuup {
                get {
                    return this.@__isikSurmakuup;
                }
                set {
                    this.@__isikSurmakuup = value;
                }
            }
            
            public virtual string IsikRiik {
                get {
                    return this.@__isikRiik;
                }
                set {
                    this.@__isikRiik = value;
                }
            }
            
            public virtual string IsikElukoht {
                get {
                    return this.@__isikElukoht;
                }
                set {
                    this.@__isikElukoht = value;
                }
            }
            
            public virtual string IsikVaikekoht {
                get {
                    return this.@__isikVaikekoht;
                }
                set {
                    this.@__isikVaikekoht = value;
                }
            }
            
            public virtual string Isiktanav {
                get {
                    return this.@__isiktanav;
                }
                set {
                    this.@__isiktanav = value;
                }
            }
            
            public virtual string IsikNimi {
                get {
                    return this.@__isikNimi;
                }
                set {
                    this.@__isikNimi = value;
                }
            }
            
            public virtual string Isikmaja {
                get {
                    return this.@__isikmaja;
                }
                set {
                    this.@__isikmaja = value;
                }
            }
            
            public virtual string Isikkorter {
                get {
                    return this.@__isikkorter;
                }
                set {
                    this.@__isikkorter = value;
                }
            }
        }
        
        public interface IIsikType {
            
            string IsikIsikukood {
                get;
                set;
            }
            
            string IsikPerenimi {
                get;
                set;
            }
            
            string IsikEesnimi {
                get;
                set;
            }
            
            string IsikOlek {
                get;
                set;
            }
            
            string IsikSurmakuup {
                get;
                set;
            }
            
            string IsikRiik {
                get;
                set;
            }
            
            string IsikElukoht {
                get;
                set;
            }
            
            string IsikVaikekoht {
                get;
                set;
            }
            
            string Isiktanav {
                get;
                set;
            }
            
            string IsikNimi {
                get;
                set;
            }
            
            string Isikmaja {
                get;
                set;
            }
            
            string Isikkorter {
                get;
                set;
            }
        }
    }
}
